package com.quanyan.search.service;

import com.quanyan.api.APIResponse;
import com.quanyan.search.entity.request.ReqActivitySearchInfo;
import com.quanyan.search.entity.response.ActivitySearchResponse;
import com.quanyan.search.entity.response.SearchResponses;
import com.quanyan.search.entity.vo.ActivityIndexInfo;

import java.util.List;

/**
 * ActivitySearchService
 * 活动搜索
 * @author Tu Chun
 * @date 2016/6/4
 */
public interface ActivitySearchService {
    String getURL() ;

    void setURL(String URL);
  
    /**
     * 添加活动索引
     * @param insertActivityIndexInfo
     * @return
     */
    APIResponse insertDoc(ActivityIndexInfo insertActivityIndexInfo);

    /**
     * 添加多个活动索引
     * @param insertActivityIndexInfos
     * @return
     */
    APIResponse insertDocs(List<ActivityIndexInfo> insertActivityIndexInfos);

    APIResponse deleteDocsActivityByIds(List<Integer> ids);

    /**
     * 根据id删除Document
     * @param id
     * @return
     */
    APIResponse deleteDocById(Integer id);


    /**
     * 删除多个Document
     * @param ids
     * @return
     */
    APIResponse deleteDocsByIds(List<Integer> ids);



    /**
     * 根据id搜索活动信息
     * @param id
     * @return
     */
    APIResponse<ActivityIndexInfo> searchActivityInfo(Integer id);



    /**
     * 根据条件搜索
     * @param reqActivitySearchInfo
     * @return
     */
    APIResponse<SearchResponses<List<ActivitySearchResponse>>> searchActivityInfoList(ReqActivitySearchInfo reqActivitySearchInfo);
    /**
     * 根据条件搜索
     * @param reqActivitySearchInfo
     * @return
     */
    APIResponse<SearchResponses<List<ActivitySearchResponse>>> searchActivityInfoListNew(ReqActivitySearchInfo reqActivitySearchInfo);
}
